Termination w.r.t. Q of the following Term Rewriting System could be proven:

Q restricted rewrite system:
The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

Q is empty.


QTRS
  ↳ Overlay + Local Confluence

Q restricted rewrite system:
The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

Q is empty.

The TRS is overlay and locally confluent. By [15] we can switch to innermost.

↳ QTRS
  ↳ Overlay + Local Confluence
QTRS
      ↳ DependencyPairsProof

Q restricted rewrite system:
The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)


Using Dependency Pairs [1,13] we result in the following initial DP problem:
Q DP problem:
The TRS P consists of the following rules:

H(g(x), y, z) → H(x, y, z)
H(g(x), y, z) → F(y, h(x, y, z))
F(g(x), g(y)) → H(g(y), x, g(y))
F(g(x), a) → F(x, g(a))

The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)

We have to consider all minimal (P,Q,R)-chains.

↳ QTRS
  ↳ Overlay + Local Confluence
    ↳ QTRS
      ↳ DependencyPairsProof
QDP
          ↳ EdgeDeletionProof

Q DP problem:
The TRS P consists of the following rules:

H(g(x), y, z) → H(x, y, z)
H(g(x), y, z) → F(y, h(x, y, z))
F(g(x), g(y)) → H(g(y), x, g(y))
F(g(x), a) → F(x, g(a))

The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)

We have to consider all minimal (P,Q,R)-chains.
We deleted some edges using various graph approximations

↳ QTRS
  ↳ Overlay + Local Confluence
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ EdgeDeletionProof
QDP
              ↳ QDPOrderProof

Q DP problem:
The TRS P consists of the following rules:

F(g(x), g(y)) → H(g(y), x, g(y))
H(g(x), y, z) → F(y, h(x, y, z))
H(g(x), y, z) → H(x, y, z)
F(g(x), a) → F(x, g(a))

The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)

We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [13].


The following pairs can be oriented strictly and are deleted.


F(g(x), a) → F(x, g(a))
The remaining pairs can at least be oriented weakly.

F(g(x), g(y)) → H(g(y), x, g(y))
H(g(x), y, z) → F(y, h(x, y, z))
H(g(x), y, z) → H(x, y, z)
Used ordering: Combined order from the following AFS and order.
F(x1, x2)  =  x2
g(x1)  =  g
H(x1, x2, x3)  =  x3
h(x1, x2, x3)  =  x3
a  =  a
f(x1, x2)  =  x2

Recursive Path Order [2].
Precedence:
a > g

The following usable rules [14] were oriented:

h(a, y, z) → z
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
f(g(x), a) → f(x, g(a))
f(a, g(y)) → g(g(y))



↳ QTRS
  ↳ Overlay + Local Confluence
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ EdgeDeletionProof
            ↳ QDP
              ↳ QDPOrderProof
QDP
                  ↳ QDPOrderProof

Q DP problem:
The TRS P consists of the following rules:

H(g(x), y, z) → H(x, y, z)
H(g(x), y, z) → F(y, h(x, y, z))
F(g(x), g(y)) → H(g(y), x, g(y))

The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)

We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [13].


The following pairs can be oriented strictly and are deleted.


F(g(x), g(y)) → H(g(y), x, g(y))
The remaining pairs can at least be oriented weakly.

H(g(x), y, z) → H(x, y, z)
H(g(x), y, z) → F(y, h(x, y, z))
Used ordering: Combined order from the following AFS and order.
H(x1, x2, x3)  =  x2
F(x1, x2)  =  x1
g(x1)  =  g(x1)

Recursive Path Order [2].
Precedence:
trivial

The following usable rules [14] were oriented: none



↳ QTRS
  ↳ Overlay + Local Confluence
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ EdgeDeletionProof
            ↳ QDP
              ↳ QDPOrderProof
                ↳ QDP
                  ↳ QDPOrderProof
QDP
                      ↳ DependencyGraphProof

Q DP problem:
The TRS P consists of the following rules:

H(g(x), y, z) → F(y, h(x, y, z))
H(g(x), y, z) → H(x, y, z)

The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)

We have to consider all minimal (P,Q,R)-chains.
The approximation of the Dependency Graph [13,14,18] contains 1 SCC with 1 less node.

↳ QTRS
  ↳ Overlay + Local Confluence
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ EdgeDeletionProof
            ↳ QDP
              ↳ QDPOrderProof
                ↳ QDP
                  ↳ QDPOrderProof
                    ↳ QDP
                      ↳ DependencyGraphProof
QDP
                          ↳ QDPOrderProof

Q DP problem:
The TRS P consists of the following rules:

H(g(x), y, z) → H(x, y, z)

The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)

We have to consider all minimal (P,Q,R)-chains.
We use the reduction pair processor [13].


The following pairs can be oriented strictly and are deleted.


H(g(x), y, z) → H(x, y, z)
The remaining pairs can at least be oriented weakly.
none
Used ordering: Combined order from the following AFS and order.
H(x1, x2, x3)  =  x1
g(x1)  =  g(x1)

Recursive Path Order [2].
Precedence:
trivial

The following usable rules [14] were oriented: none



↳ QTRS
  ↳ Overlay + Local Confluence
    ↳ QTRS
      ↳ DependencyPairsProof
        ↳ QDP
          ↳ EdgeDeletionProof
            ↳ QDP
              ↳ QDPOrderProof
                ↳ QDP
                  ↳ QDPOrderProof
                    ↳ QDP
                      ↳ DependencyGraphProof
                        ↳ QDP
                          ↳ QDPOrderProof
QDP
                              ↳ PisEmptyProof

Q DP problem:
P is empty.
The TRS R consists of the following rules:

f(a, g(y)) → g(g(y))
f(g(x), a) → f(x, g(a))
f(g(x), g(y)) → h(g(y), x, g(y))
h(g(x), y, z) → f(y, h(x, y, z))
h(a, y, z) → z

The set Q consists of the following terms:

f(a, g(x0))
f(g(x0), a)
f(g(x0), g(x1))
h(g(x0), x1, x2)
h(a, x0, x1)

We have to consider all minimal (P,Q,R)-chains.
The TRS P is empty. Hence, there is no (P,Q,R) chain.